xcsv: Add some of GMSD (Garmin special data) fields.
authoroliskoli <oliskoli>
Thu, 17 Apr 2008 20:49:09 +0000 (20:49 +0000)
committeroliskoli <oliskoli>
Thu, 17 Apr 2008 20:49:09 +0000 (20:49 +0000)
Makefile.in
csv_util.c
xcsv_tokens.gperf
xcsv_tokens.in

index 659b53c72cc8a637cb94a9a225fcdf05c632cdb7..e97c2d6c3247b7e731f8430e0a0c5cd2a9254156 100644 (file)
@@ -388,7 +388,7 @@ csv_util.o: csv_util.c defs.h config.h queue.h gbtypes.h zlib/zlib.h \
   jeeps/gpsdevice.h jeeps/gpssend.h jeeps/gpsread.h jeeps/gpsutil.h \
   jeeps/gpsapp.h jeeps/gpsprot.h jeeps/gpscom.h jeeps/gpsfmt.h \
   jeeps/gpsmath.h jeeps/gpsmem.h jeeps/gpsrqst.h jeeps/gpsinput.h \
-  jeeps/gpsproj.h xmlgeneric.h xcsv_tokens.gperf
+  jeeps/gpsproj.h xmlgeneric.h xcsv_tokens.gperf garmin_fs.h
 delgpl.o: delgpl.c defs.h config.h queue.h gbtypes.h zlib/zlib.h \
   zlib/zconf.h gbfile.h cet.h cet_util.h inifile.h
 discard.o: discard.c defs.h config.h queue.h gbtypes.h zlib/zlib.h \
index 5b662743d2e6c275e099f33c0042c12865415fa7..31886f4b4d86bb84428ab0a800b6a5575f18d92d 100644 (file)
@@ -28,6 +28,7 @@
 #include "strptime.h"
 #include "jeeps/gpsmath.h"
 #include "xmlgeneric.h"  // for xml_fill_in_time.
+#include "garmin_fs.h"
 
 #define MYNAME "CSV_UTIL"
 
@@ -56,9 +57,12 @@ typedef enum {
        XT_ALT_METERS,
        XT_ANYNAME,
        XT_CADENCE,
+       XT_CITY,
        XT_CONSTANT,
+       XT_COUNTRY,
        XT_DESCRIPTION,
        XT_EXCEL_TIME,
+       XT_FACILITY,
        XT_GEOCACHE_CONTAINER,
        XT_GEOCACHE_DIFF,
        XT_GEOCACHE_HINT,
@@ -107,8 +111,12 @@ typedef enum {
        XT_PATH_SPEED_KNOTS,
        XT_PATH_SPEED_KPH,
        XT_PATH_SPEED_MPH,
+       XT_PHONE_NR,
+       XT_POSTAL_CODE,
        XT_ROUTE_NAME,
        XT_SHORTNAME,
+       XT_STATE,
+       XT_STREET_ADDR,
        XT_TIMET_TIME,
        XT_TRACK_NAME,
        XT_URL,
@@ -877,6 +885,17 @@ time_to_yyyymmdd(time_t t)
        return b;
 }
 
+static garmin_fs_t *
+gmsd_init(waypoint *wpt)
+{
+       garmin_fs_t *gmsd = GMSD_FIND(wpt);
+       if (gmsd == NULL) {
+               gmsd = garmin_fs_alloc(-1);
+               fs_chain_add(&wpt->fs, (format_specific_data *) gmsd);
+       }
+       return gmsd;
+}
+
 /*****************************************************************************/
 /* xcsv_parse_val() - parse incoming data into the waypt structure.          */
 /* usage: xcsv_parse_val("-123.34", *waypt, *field_map)                      */
@@ -1129,6 +1148,42 @@ xcsv_parse_val(const char *s, waypoint *wpt, const field_map_t *fmp)
     case XT_PATH_DISTANCE_KM:
        /* Ignored on input */
        break;
+    /* GMSD ****************************************************************/
+    case XT_COUNTRY: {
+       garmin_fs_t *gmsd = gmsd_init(wpt);
+       GMSD_SET(country, csv_stringtrim(s, enclosure, 0));
+       }
+       break;
+    case XT_STATE: {
+       garmin_fs_t *gmsd = gmsd_init(wpt);
+       GMSD_SET(state, csv_stringtrim(s, enclosure, 0));
+       }
+       break;
+    case XT_CITY: {
+       garmin_fs_t *gmsd = gmsd_init(wpt);
+       GMSD_SET(city, csv_stringtrim(s, enclosure, 0));
+       }
+       break;
+    case XT_STREET_ADDR: {
+       garmin_fs_t *gmsd = gmsd_init(wpt);
+       GMSD_SET(addr, csv_stringtrim(s, enclosure, 0));
+       }
+       break;
+    case XT_POSTAL_CODE: {
+       garmin_fs_t *gmsd = gmsd_init(wpt);
+       GMSD_SET(postal_code, csv_stringtrim(s, enclosure, 0));
+       }
+       break;
+    case XT_PHONE_NR: {
+       garmin_fs_t *gmsd = gmsd_init(wpt);
+       GMSD_SET(phone_nr, csv_stringtrim(s, enclosure, 0));
+       }
+       break;
+    case XT_FACILITY: {
+       garmin_fs_t *gmsd = gmsd_init(wpt);
+       GMSD_SET(facility, csv_stringtrim(s, enclosure, 0));
+       }
+       break;
     case -1:
        if (strncmp(fmp->key, "LON_10E", 7) == 0) {
                wpt->longitude = atof(s) / pow((double)10, atof(fmp->key+7));
@@ -1708,6 +1763,42 @@ xcsv_waypt_pr(const waypoint *wpt)
                writebuff(buff, fmp->printfc, fix);
                }
                break;
+       /* GMSD ************************************************************/
+       case XT_COUNTRY: {
+               garmin_fs_t *gmsd = GMSD_FIND(wpt);
+               writebuff(buff, fmp->printfc, GMSD_GET(country, ""));
+               }
+               break;
+       case XT_STATE: {
+               garmin_fs_t *gmsd = GMSD_FIND(wpt);
+               writebuff(buff, fmp->printfc, GMSD_GET(state, ""));
+               }
+               break;
+       case XT_CITY: {
+               garmin_fs_t *gmsd = GMSD_FIND(wpt);
+               writebuff(buff, fmp->printfc, GMSD_GET(city, ""));
+               }
+               break;
+       case XT_POSTAL_CODE: {
+               garmin_fs_t *gmsd = GMSD_FIND(wpt);
+               writebuff(buff, fmp->printfc, GMSD_GET(postal_code, ""));
+               }
+               break;
+       case XT_STREET_ADDR: {
+               garmin_fs_t *gmsd = GMSD_FIND(wpt);
+               writebuff(buff, fmp->printfc, GMSD_GET(addr, ""));
+               }
+               break;
+       case XT_PHONE_NR: {
+               garmin_fs_t *gmsd = GMSD_FIND(wpt);
+               writebuff(buff, fmp->printfc, GMSD_GET(phone_nr, ""));
+               }
+               break;
+       case XT_FACILITY: {
+               garmin_fs_t *gmsd = GMSD_FIND(wpt);
+               writebuff(buff, fmp->printfc, GMSD_GET(facility, ""));
+               }
+               break;
        case -1:
                if (strncmp(fmp->key, "LON_10E", 7) == 0) {
                        writebuff(buff, fmp->printfc, lon * pow((double)10, atof(fmp->key+7)));
index e0df1bec901d7a81be10522315a1a3e1a0bc3031..728fdc83758a0aa2d2462b7dae4413627ca0b686 100644 (file)
@@ -1,4 +1,4 @@
-/* ANSI-C code produced by gperf version 3.0.1 */
+/* ANSI-C code produced by gperf version 3.0.2 */
 /* Command-line: gperf -L ANSI-C -D -t xcsv_tokens.in  */
 /* Computed positions: -k'2,4-5,12' */
 
 #line 1 "xcsv_tokens.in"
 struct xt_mapping {char *name; int xt_token; };
 
-#define TOTAL_KEYWORDS 62
+#define TOTAL_KEYWORDS 69
 #define MIN_WORD_LENGTH 3
 #define MAX_WORD_LENGTH 21
-#define MIN_HASH_VALUE 10
-#define MAX_HASH_VALUE 113
-/* maximum key range = 104, duplicates = 0 */
+#define MIN_HASH_VALUE 7
+#define MAX_HASH_VALUE 148
+/* maximum key range = 142, duplicates = 0 */
 
 #ifdef __GNUC__
 __inline
@@ -51,32 +51,32 @@ hash (register const char *str, register unsigned int len)
 {
   static unsigned char asso_values[] =
     {
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114,  25, 114,   0,   0,   0,
-       50,  15,   5,  10, 114,  50,  25,  45,   5,   0,
-       40, 114,  20,   5,   5, 114,  30, 114,  10,   5,
-      114, 114, 114, 114, 114,  15, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
-      114, 114, 114, 114, 114, 114
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149,   0, 149,   0,  10,   5,
+       55,  40,  20,   0, 149,  60,  30,  40,   0,  20,
+       70, 149,  50,  45,  30, 149,  30, 149,  40,  10,
+      149, 149, 149, 149, 149,   0, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
+      149, 149, 149, 149, 149, 149
     };
   register int hval = len;
 
@@ -113,143 +113,159 @@ in_word_set (register const char *str, register unsigned int len)
 {
   static struct xt_mapping wordlist[] =
     {
-#line 50 "xcsv_tokens.in"
-      {"NOTES", XT_NOTES},
-#line 58 "xcsv_tokens.in"
-      {"ROUTE_NAME", XT_ROUTE_NAME},
-#line 7 "xcsv_tokens.in"
-      {"CONSTANT", XT_CONSTANT},
-#line 30 "xcsv_tokens.in"
-      {"INDEX", XT_INDEX},
-#line 44 "xcsv_tokens.in"
-      {"LON_DIR", XT_LON_DIR},
-#line 62 "xcsv_tokens.in"
-      {"URL", XT_URL},
-#line 60 "xcsv_tokens.in"
-      {"TIMET_TIME", XT_TIMET_TIME},
-#line 42 "xcsv_tokens.in"
-      {"LON_DECIMAL", XT_LON_DECIMAL},
-#line 48 "xcsv_tokens.in"
-      {"LON_NMEA", XT_LON_NMEA},
+#line 5 "xcsv_tokens.in"
+      {"ANYNAME", XT_ANYNAME},
 #line 43 "xcsv_tokens.in"
-      {"LON_DECIMALDIR", XT_LON_DECIMALDIR},
-#line 28 "xcsv_tokens.in"
-      {"ICON_DESCR", XT_ICON_DESCR},
-#line 8 "xcsv_tokens.in"
-      {"DESCRIPTION", XT_DESCRIPTION},
+      {"LAT_NMEA", XT_LAT_NMEA},
 #line 31 "xcsv_tokens.in"
-      {"ISO_TIME", XT_ISO_TIME},
-#line 25 "xcsv_tokens.in"
-      {"HEART_RATE", XT_HEART_RATE},
-#line 32 "xcsv_tokens.in"
-      {"ISO_TIME_MS", XT_ISO_TIME_MS},
+      {"ICON_DESCR", XT_ICON_DESCR},
 #line 6 "xcsv_tokens.in"
       {"CADENCE", XT_CADENCE},
-#line 46 "xcsv_tokens.in"
-      {"LON_HUMAN_READABLE", XT_LON_HUMAN_READABLE},
-#line 59 "xcsv_tokens.in"
-      {"SHORTNAME", XT_SHORTNAME},
-#line 29 "xcsv_tokens.in"
-      {"IGNORE", XT_IGNORE},
-#line 5 "xcsv_tokens.in"
-      {"ANYNAME", XT_ANYNAME},
-#line 12 "xcsv_tokens.in"
-      {"GEOCACHE_HINT", XT_GEOCACHE_HINT},
-#line 9 "xcsv_tokens.in"
-      {"EXCEL_TIME", XT_EXCEL_TIME},
-#line 36 "xcsv_tokens.in"
-      {"LAT_DIR", XT_LAT_DIR},
-#line 10 "xcsv_tokens.in"
-      {"GEOCACHE_CONTAINER", XT_GEOCACHE_CONTAINER},
-#line 13 "xcsv_tokens.in"
-      {"GEOCACHE_LAST_FOUND", XT_GEOCACHE_LAST_FOUND},
-#line 49 "xcsv_tokens.in"
+#line 7 "xcsv_tokens.in"
+      {"CITY", XT_CITY},
+#line 52 "xcsv_tokens.in"
       {"MAP_EN_BNG", XT_MAP_EN_BNG},
-#line 34 "xcsv_tokens.in"
-      {"LAT_DECIMAL", XT_LAT_DECIMAL},
-#line 47 "xcsv_tokens.in"
-      {"LON_INT32DEG", XT_LON_INT32DEG},
-#line 40 "xcsv_tokens.in"
-      {"LAT_NMEA", XT_LAT_NMEA},
-#line 35 "xcsv_tokens.in"
-      {"LAT_DECIMALDIR", XT_LAT_DECIMALDIR},
-#line 54 "xcsv_tokens.in"
-      {"PATH_SPEED", XT_PATH_SPEED},
-#line 51 "xcsv_tokens.in"
-      {"PATH_COURSE", XT_PATH_COURSE},
+#line 39 "xcsv_tokens.in"
+      {"LAT_DIR", XT_LAT_DIR},
 #line 15 "xcsv_tokens.in"
-      {"GEOCACHE_TERR", XT_GEOCACHE_TERR},
-#line 41 "xcsv_tokens.in"
-      {"LOCAL_TIME", XT_LOCAL_TIME},
-#line 52 "xcsv_tokens.in"
-      {"PATH_DISTANCE_KM", XT_PATH_DISTANCE_KM},
-#line 38 "xcsv_tokens.in"
-      {"LAT_HUMAN_READABLE", XT_LAT_HUMAN_READABLE},
-#line 53 "xcsv_tokens.in"
-      {"PATH_DISTANCE_MILES", XT_PATH_DISTANCE_MILES},
-#line 14 "xcsv_tokens.in"
+      {"GEOCACHE_HINT", XT_GEOCACHE_HINT},
+#line 19 "xcsv_tokens.in"
       {"GEOCACHE_PLACER", XT_GEOCACHE_PLACER},
-#line 23 "xcsv_tokens.in"
-      {"GPS_SAT", XT_GPS_SAT},
-#line 21 "xcsv_tokens.in"
-      {"GPS_HDOP", XT_GPS_HDOP},
-#line 18 "xcsv_tokens.in"
+#line 37 "xcsv_tokens.in"
+      {"LAT_DECIMAL", XT_LAT_DECIMAL},
+#line 13 "xcsv_tokens.in"
+      {"GEOCACHE_CONTAINER", XT_GEOCACHE_CONTAINER},
+#line 16 "xcsv_tokens.in"
       {"GEOCACHE_ISARCHIVED", XT_GEOCACHE_ISARCHIVED},
 #line 17 "xcsv_tokens.in"
       {"GEOCACHE_ISAVAILABLE", XT_GEOCACHE_ISAVAILABLE},
-#line 19 "xcsv_tokens.in"
-      {"GMT_TIME", XT_GMT_TIME},
-#line 45 "xcsv_tokens.in"
-      {"LON_DIRDECIMAL", XT_LON_DIRDECIMAL},
+#line 51 "xcsv_tokens.in"
+      {"LON_NMEA", XT_LON_NMEA},
+#line 60 "xcsv_tokens.in"
+      {"PATH_SPEED", XT_PATH_SPEED},
+#line 54 "xcsv_tokens.in"
+      {"PATH_COURSE", XT_PATH_COURSE},
+#line 61 "xcsv_tokens.in"
+      {"PHONE_NR", XT_PHONE_NR},
+#line 36 "xcsv_tokens.in"
+      {"LAT_DECIMALDIR", XT_LAT_DECIMALDIR},
+#line 55 "xcsv_tokens.in"
+      {"PATH_DISTANCE_KM", XT_PATH_DISTANCE_KM},
+#line 48 "xcsv_tokens.in"
+      {"LON_DIR", XT_LON_DIR},
+#line 12 "xcsv_tokens.in"
+      {"FACILITY", XT_FACILITY},
+#line 56 "xcsv_tokens.in"
+      {"PATH_DISTANCE_MILES", XT_PATH_DISTANCE_MILES},
+#line 46 "xcsv_tokens.in"
+      {"LON_DECIMAL", XT_LON_DECIMAL},
+#line 40 "xcsv_tokens.in"
+      {"LAT_HUMAN_READABLE", XT_LAT_HUMAN_READABLE},
+#line 67 "xcsv_tokens.in"
+      {"TIMET_TIME", XT_TIMET_TIME},
 #line 33 "xcsv_tokens.in"
-      {"LATLON_HUMAN_READABLE", XT_LATLON_HUMAN_READABLE},
-#line 39 "xcsv_tokens.in"
+      {"INDEX", XT_INDEX},
+#line 66 "xcsv_tokens.in"
+      {"STREET_ADDR", XT_STREET_ADDR},
+#line 41 "xcsv_tokens.in"
       {"LAT_INT32DEG", XT_LAT_INT32DEG},
-#line 16 "xcsv_tokens.in"
-      {"GEOCACHE_TYPE", XT_GEOCACHE_TYPE},
-#line 61 "xcsv_tokens.in"
-      {"TRACK_NAME", XT_TRACK_NAME},
+#line 70 "xcsv_tokens.in"
+      {"URL", XT_URL},
+#line 45 "xcsv_tokens.in"
+      {"LON_DECIMALDIR", XT_LON_DECIMALDIR},
+#line 9 "xcsv_tokens.in"
+      {"COUNTRY", XT_COUNTRY},
+#line 44 "xcsv_tokens.in"
+      {"LOCAL_TIME", XT_LOCAL_TIME},
+#line 62 "xcsv_tokens.in"
+      {"POSTAL_CODE", XT_POSTAL_CODE},
+#line 49 "xcsv_tokens.in"
+      {"LON_HUMAN_READABLE", XT_LON_HUMAN_READABLE},
+#line 38 "xcsv_tokens.in"
+      {"LAT_DIRDECIMAL", XT_LAT_DIRDECIMAL},
 #line 63 "xcsv_tokens.in"
-      {"URL_LINK_TEXT", XT_URL_LINK_TEXT},
-#line 26 "xcsv_tokens.in"
-      {"HMSG_TIME", XT_HMSG_TIME},
-#line 11 "xcsv_tokens.in"
+      {"ROUTE_NAME", XT_ROUTE_NAME},
+#line 10 "xcsv_tokens.in"
+      {"DESCRIPTION", XT_DESCRIPTION},
+#line 20 "xcsv_tokens.in"
+      {"GEOCACHE_TERR", XT_GEOCACHE_TERR},
+#line 18 "xcsv_tokens.in"
+      {"GEOCACHE_LAST_FOUND", XT_GEOCACHE_LAST_FOUND},
+#line 65 "xcsv_tokens.in"
+      {"STATE", XT_STATE},
+#line 42 "xcsv_tokens.in"
+      {"LATLON_HUMAN_READABLE", XT_LATLON_HUMAN_READABLE},
+#line 50 "xcsv_tokens.in"
+      {"LON_INT32DEG", XT_LON_INT32DEG},
+#line 14 "xcsv_tokens.in"
       {"GEOCACHE_DIFF", XT_GEOCACHE_DIFF},
-#line 24 "xcsv_tokens.in"
-      {"GPS_VDOP", XT_GPS_VDOP},
-#line 27 "xcsv_tokens.in"
+#line 59 "xcsv_tokens.in"
+      {"PATH_SPEED_MPH", XT_PATH_SPEED_MPH},
+#line 53 "xcsv_tokens.in"
+      {"NOTES", XT_NOTES},
+#line 22 "xcsv_tokens.in"
+      {"GMT_TIME", XT_GMT_TIME},
+#line 30 "xcsv_tokens.in"
       {"HMSL_TIME", XT_HMSL_TIME},
 #line 4 "xcsv_tokens.in"
       {"ALT_METERS", XT_ALT_METERS},
+#line 35 "xcsv_tokens.in"
+      {"ISO_TIME", XT_ISO_TIME},
+#line 47 "xcsv_tokens.in"
+      {"LON_DIRDECIMAL", XT_LON_DIRDECIMAL},
+#line 11 "xcsv_tokens.in"
+      {"EXCEL_TIME", XT_EXCEL_TIME},
+#line 34 "xcsv_tokens.in"
+      {"ISO_TIME_MS", XT_ISO_TIME_MS},
+#line 21 "xcsv_tokens.in"
+      {"GEOCACHE_TYPE", XT_GEOCACHE_TYPE},
+#line 29 "xcsv_tokens.in"
+      {"HMSG_TIME", XT_HMSG_TIME},
 #line 3 "xcsv_tokens.in"
       {"ALT_FEET", XT_ALT_FEET},
-#line 37 "xcsv_tokens.in"
-      {"LAT_DIRDECIMAL", XT_LAT_DIRDECIMAL},
-#line 22 "xcsv_tokens.in"
-      {"GPS_PDOP", XT_GPS_PDOP},
-#line 57 "xcsv_tokens.in"
-      {"PATH_SPEED_MPH", XT_PATH_SPEED_MPH},
-#line 56 "xcsv_tokens.in"
+#line 58 "xcsv_tokens.in"
       {"PATH_SPEED_KPH", XT_PATH_SPEED_KPH},
-#line 55 "xcsv_tokens.in"
+#line 28 "xcsv_tokens.in"
+      {"HEART_RATE", XT_HEART_RATE},
+#line 57 "xcsv_tokens.in"
       {"PATH_SPEED_KNOTS", XT_PATH_SPEED_KNOTS},
-#line 20 "xcsv_tokens.in"
-      {"GPS_FIX", XT_GPS_FIX},
+#line 24 "xcsv_tokens.in"
+      {"GPS_HDOP", XT_GPS_HDOP},
+#line 8 "xcsv_tokens.in"
+      {"CONSTANT", XT_CONSTANT},
+#line 27 "xcsv_tokens.in"
+      {"GPS_VDOP", XT_GPS_VDOP},
 #line 64 "xcsv_tokens.in"
-      {"YYYYMMDD_TIME", XT_YYYYMMDD_TIME}
+      {"SHORTNAME", XT_SHORTNAME},
+#line 71 "xcsv_tokens.in"
+      {"YYYYMMDD_TIME", XT_YYYYMMDD_TIME},
+#line 32 "xcsv_tokens.in"
+      {"IGNORE", XT_IGNORE},
+#line 68 "xcsv_tokens.in"
+      {"TRACK_NAME", XT_TRACK_NAME},
+#line 26 "xcsv_tokens.in"
+      {"GPS_SAT", XT_GPS_SAT},
+#line 23 "xcsv_tokens.in"
+      {"GPS_FIX", XT_GPS_FIX},
+#line 69 "xcsv_tokens.in"
+      {"URL_LINK_TEXT", XT_URL_LINK_TEXT},
+#line 25 "xcsv_tokens.in"
+      {"GPS_PDOP", XT_GPS_PDOP}
     };
 
   static signed char lookup[] =
     {
-      -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,  0, -1, -1, -1,
-      -1,  1, -1, -1,  2, -1,  3, -1,  4,  5, -1,  6,  7, -1,
-       8,  9, 10, 11, -1, 12, -1, 13, 14, 15, 16, 17, -1, 18,
-      19, 20, -1, 21, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30,
-      31, -1, 32, -1, 33, 34, -1, 35, 36, 37, -1, 38, 39, 40,
-      41, -1, -1, 42, 43, -1, 44, 45, 46, -1, 47, -1, -1, 48,
-      49, -1, -1, -1, 50, -1, -1, -1, -1, 51, 52, 53, -1, -1,
-      54, 55, -1, -1, -1, 56, 57, -1, -1, -1, -1, 58, -1, 59,
-      60, 61
+      -1, -1, -1, -1, -1, -1, -1,  0,  1, -1,  2, -1,  3, -1,
+       4,  5, -1,  6,  7, -1,  8,  9, -1, 10, 11, 12, -1, -1,
+      13, -1, 14, 15, -1, 16, 17, -1, 18, 19, 20, 21, -1, 22,
+      -1, 23, -1, 24, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1,
+      -1, 30, -1, -1, 31, 32, -1, 33, 34, 35, 36, -1, 37, 38,
+      39, 40, 41, 42, 43, 44, -1, -1, 45, 46, 47, -1, -1, 48,
+      49, 50, 51, -1, 52, 53, -1, -1, -1, 54, 55, 56, 57, -1,
+      58, -1, -1, -1, -1, 59, -1, -1, -1, -1, 60, 61, -1, -1,
+      -1, 62, -1, -1, 63, -1, -1, -1, 64, -1, 65, -1, -1, -1,
+      -1, -1, -1, -1, -1, -1, 66, 67, -1, -1, -1, -1, -1, -1,
+      -1, -1, -1, -1, -1, -1, -1, -1, 68
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
index a80c1f253331a07f53baeb2d0e13079d5a0b124e..460ed0003cf674a972f32a8211f0876af305793d 100644 (file)
@@ -4,18 +4,21 @@ ALT_FEET, XT_ALT_FEET
 ALT_METERS, XT_ALT_METERS
 ANYNAME, XT_ANYNAME
 CADENCE, XT_CADENCE
+CITY, XT_CITY
 CONSTANT, XT_CONSTANT
+COUNTRY, XT_COUNTRY
 DESCRIPTION, XT_DESCRIPTION
 EXCEL_TIME, XT_EXCEL_TIME
+FACILITY, XT_FACILITY
 GEOCACHE_CONTAINER, XT_GEOCACHE_CONTAINER
 GEOCACHE_DIFF, XT_GEOCACHE_DIFF
 GEOCACHE_HINT, XT_GEOCACHE_HINT
+GEOCACHE_ISARCHIVED, XT_GEOCACHE_ISARCHIVED
+GEOCACHE_ISAVAILABLE, XT_GEOCACHE_ISAVAILABLE
 GEOCACHE_LAST_FOUND, XT_GEOCACHE_LAST_FOUND
 GEOCACHE_PLACER, XT_GEOCACHE_PLACER
 GEOCACHE_TERR, XT_GEOCACHE_TERR
 GEOCACHE_TYPE, XT_GEOCACHE_TYPE
-GEOCACHE_ISAVAILABLE, XT_GEOCACHE_ISAVAILABLE
-GEOCACHE_ISARCHIVED, XT_GEOCACHE_ISARCHIVED
 GMT_TIME, XT_GMT_TIME
 GPS_FIX, XT_GPS_FIX
 GPS_HDOP, XT_GPS_HDOP
@@ -28,21 +31,21 @@ HMSL_TIME, XT_HMSL_TIME
 ICON_DESCR, XT_ICON_DESCR
 IGNORE, XT_IGNORE
 INDEX, XT_INDEX
-ISO_TIME, XT_ISO_TIME
 ISO_TIME_MS, XT_ISO_TIME_MS
-LATLON_HUMAN_READABLE, XT_LATLON_HUMAN_READABLE
-LAT_DECIMAL, XT_LAT_DECIMAL
+ISO_TIME, XT_ISO_TIME
 LAT_DECIMALDIR, XT_LAT_DECIMALDIR
-LAT_DIR, XT_LAT_DIR
+LAT_DECIMAL, XT_LAT_DECIMAL
 LAT_DIRDECIMAL, XT_LAT_DIRDECIMAL
+LAT_DIR, XT_LAT_DIR
 LAT_HUMAN_READABLE, XT_LAT_HUMAN_READABLE
 LAT_INT32DEG, XT_LAT_INT32DEG
+LATLON_HUMAN_READABLE, XT_LATLON_HUMAN_READABLE
 LAT_NMEA, XT_LAT_NMEA
 LOCAL_TIME, XT_LOCAL_TIME
-LON_DECIMAL, XT_LON_DECIMAL
 LON_DECIMALDIR, XT_LON_DECIMALDIR
-LON_DIR, XT_LON_DIR
+LON_DECIMAL, XT_LON_DECIMAL
 LON_DIRDECIMAL, XT_LON_DIRDECIMAL
+LON_DIR, XT_LON_DIR
 LON_HUMAN_READABLE, XT_LON_HUMAN_READABLE
 LON_INT32DEG, XT_LON_INT32DEG
 LON_NMEA, XT_LON_NMEA
@@ -51,14 +54,18 @@ NOTES, XT_NOTES
 PATH_COURSE, XT_PATH_COURSE
 PATH_DISTANCE_KM, XT_PATH_DISTANCE_KM
 PATH_DISTANCE_MILES, XT_PATH_DISTANCE_MILES
-PATH_SPEED, XT_PATH_SPEED
 PATH_SPEED_KNOTS, XT_PATH_SPEED_KNOTS
 PATH_SPEED_KPH, XT_PATH_SPEED_KPH
 PATH_SPEED_MPH, XT_PATH_SPEED_MPH
+PATH_SPEED, XT_PATH_SPEED
+PHONE_NR, XT_PHONE_NR
+POSTAL_CODE, XT_POSTAL_CODE
 ROUTE_NAME, XT_ROUTE_NAME
 SHORTNAME, XT_SHORTNAME
+STATE, XT_STATE
+STREET_ADDR, XT_STREET_ADDR
 TIMET_TIME, XT_TIMET_TIME
 TRACK_NAME, XT_TRACK_NAME
-URL, XT_URL
 URL_LINK_TEXT, XT_URL_LINK_TEXT
+URL, XT_URL
 YYYYMMDD_TIME, XT_YYYYMMDD_TIME